Criando perfis do usuário IAM

O perfil do usuário do instalador é necessário para a implementação do software IBM Spectrum Virtualize for Public Cloud no AWS. Ele inclui mais permissões para ações que estão relacionadas a compras, criação de instâncias e exclusão de recursos relacionados à configuração. O perfil do usuário do instalador deve ser criado no console de gerenciamento IAM do AWS antes de executar o modelo de instalação no AWS Marketplace. Se permissões não forem designadas, ações que são necessárias para a instalação bem-sucedida do software IBM Spectrum Virtualize for Public Cloud falham.

É possível usar o perfil do administrador padrão do AWS para instalar o software IBM Spectrum Virtualize for Public Cloud ou é possível criar um perfil do usuário do instalador que inclua apenas as permissões necessárias para implementar o software. Para obter mais informações, consulte Planejando perfis de usuário e permissões do IAM no AWS.

Para criar um perfil do usuário do instalador, conclua estas etapas:
  1. Efetue logon no Console de gerenciamento do AWS com o perfil do administrador padrão do AWS.
  2. Selecione IAM.
  3. Selecione Políticas > Criar política.
  4. Selecione a guia JSON e inclua o seguinte conteúdo JSON:
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "ec2:CreateDhcpOptions",
                    "ec2:AuthorizeSecurityGroupIngress",
                    "ec2:ModifyVolumeAttribute",
                    "aws-marketplace:ListBuilds",
                    "ec2:DeleteVpcEndpoints",
                    "ec2:CreateKeyPair",
                    "secretsmanager:DeleteSecret",
                    "ec2:AttachInternetGateway",
                    "iam:PutRolePolicy",
                    "iam:AddRoleToInstanceProfile",
                    "ec2:DeleteRouteTable",
                    "cloudformation:DescribeStackEvents",
                    "ec2:StartInstances",
                    "ec2:CreateNetworkInterfacePermission",
                    "ec2:RevokeSecurityGroupEgress",
                    "ec2:CreateRoute",
                    "ec2:CreateInternetGateway",
                    "cloudformation:UpdateStack",
                    "ec2:DeleteInternetGateway",
                    "sns:Subscribe",
                    "s3:DeleteObject",
                    "cloudformation:ListStackResources",
                    "iam:GetRole",
                    "ec2:CreateTags",
                    "ec2:ModifyNetworkInterfaceAttribute",
                    "sns:CreateTopic",
                    "iam:DeleteRole",
                    "ec2:RunInstances",
                    "ec2:StopInstances",
                    "ec2:AssignPrivateIpAddresses",
                    "ec2:DisassociateRouteTable",
                    "ec2:CreateVolume",
                    "ec2:RevokeSecurityGroupIngress",
                    "ec2:CreateNetworkInterface",
                    "s3:PutObject",
                    "cloudformation:GetStackPolicy",
                    "ec2:CreateDefaultVpc",
                    "cloudformation:DeleteStack",
                    "ec2:DeleteDhcpOptions",
                    "ec2:DeleteNatGateway",
                    "ec2:CreateSubnet",
                    "iam:GetRolePolicy",
                    "secretsmanager:TagResource",
                    "cloudformation:CreateUploadBucket",
                    "iam:CreateInstanceProfile",
                    "ec2:AttachVolume",
                    "ec2:DisassociateAddress",
                    "aws-marketplace:Unsubscribe",
                    "ec2:CreateNatGateway",
                    "ec2:CreateVpc",
                    "cloudformation:UpdateTerminationProtection",
                    "sns:ListTopics",
                    "iam:PassRole",
                    "ec2:CreateDefaultSubnet",
                    "iam:DeleteRolePolicy",
                    "s3:DeleteBucket",
                    "iam:DeleteInstanceProfile",
                    "ec2:ReleaseAddress",
                    "ec2:RebootInstances",
                    "aws-marketplace:ViewSubscriptions",
                    "ec2:AssociateDhcpOptions",
                    "ec2:ModifyInstancePlacement",
                    "sns:GetTopicAttributes",
                    "iam:ListRoles",
                    "ec2:Describe*",
                    "s3:ListAllMyBuckets",
                    "ec2:DeleteSubnet",
                    "iam:RemoveRoleFromInstanceProfile",
                    "iam:CreateRole",
                    "s3:CreateBucket",
                    "sns:Unsubscribe",
                    "ec2:AssociateRouteTable",
                    "ec2:DeleteVolume",
                    "ec2:CreatePlacementGroup",
                    "ssm:DescribeParameters",
                    "ec2:Get*",
                    "ec2:DetachVolume",
                    "cloudformation:DescribeStackResources",
                    "ec2:CreateRouteTable",
                    "ec2:DeleteNetworkInterface",
                    "ssm:GetParameters",
                    "ec2:DetachInternetGateway",
                    "cloudformation:DescribeStacks",
                    "s3:GetObject",
                    "cloudformation:GetTemplate",
                    "ec2:DeleteVpc",
                    "ec2:AssociateAddress",
                    "ec2:DeleteKeyPair",
                    "ec2:DeleteTags",
                    "sns:DeleteTopic",
                    "secretsmanager:CreateSecret",
                    "aws-marketplace:Subscribe",
                    "ec2:DeleteNetworkInterfacePermission",
                    "ec2:CreateSecurityGroup",
                    "ec2:ModifyVpcAttribute",
                    "ec2:AuthorizeSecurityGroupEgress",
                    "cloudformation:ListStacks",
                    "ec2:TerminateInstances",
                    "ec2:DetachNetworkInterface",
                    "ec2:DeletePlacementGroup",
                    "iam:GetInstanceProfile",
                    "ec2:DeleteRoute",
                    "iam:ListInstanceProfiles",
                    "cloudformation:GetTemplateSummary",
                    "ec2:AllocateAddress",
                    "aws-marketplace:StartBuild",
                    "cloudformation:CreateStack",
                    "ec2:CreateVpcEndpoint",
                    "ec2:DeleteSecurityGroup",
                    "ec2:AttachNetworkInterface",
                    "cloudformation:CreateChangeSet",   
                    "cloudformation:DeleteChangeSet,"
                    "cloudformation:DescribeChangeSet",
                    "cloudformation:SetStackPolicy"
                ],
                "Resource": "*"
            }
        ]
    }
  5. Clique em Revisar política e inclua um nome para a política, como installerpolicy. Clique em Criar política .
  6. Selecione Usuários > Incluir usuário.
  7. Insira o nome, a senha e assegure-se de que Acesso do AWS Management Console esteja selecionado para Tipo de acesso. Opcionalmente, é possível selecionar Acesso programático. Clique em Avançar: permissões.
  8. Selecione Anexar as políticas existentes diretamente e selecione a nova política que você criou na etapa 5. Clique em Avançar: tags.
  9. Assegure-se de incluir uma tag que inclua o endereço de e-mail para o perfil do usuário do instalador.
Perfis de usuário adicionais podem ser definidos com base em sua própria política de segurança de TI. É recomendável limitar as permissões desses usuários para as ações que eles concluem como parte de seu trabalho diário. Esses perfis de usuário não são necessários para instalar o software IBM Spectrum Virtualize for Public Cloud em instâncias do EC2.Para criar um perfil do usuário com permissões limitadas, use as instruções do perfil do usuário do instalador, mas use o conteúdo JSON a seguir ao criar a política customizada:
{
   "Version": "2020-10-17",
   "Statement": [
       {
           "Sid": "VisualEditor0",
           "Effect": "Allow",
           "Action": [
               "ec2:RebootInstances",
               "iam:GetRole",
               "ec2:Describe*",
               "ec2:StartInstances",
               "iam:ListRoleTags",
               "iam:ListAttachedRolePolicies",
               "iam:ListRoles",
               "iam:ListPolicies",
               "ec2:StopInstances",
               "iam:ListRolePolicies",
               "iam:ListInstanceProfiles",
               "iam:GetRolePolicy",
               "ec2:Get*",
            ],
           "Resource": "*"
       }
   ]
}